package com.ihr360.insurance.model.dto.benefits.projection;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.ihr360.insurance.model.dto.benefits.CompanyBenefit;
import com.ihr360.insurance.model.vo.BenefitGroupVo;
import com.ihr360.insurance.model.vo.CompanyBenefitConfigVo;
import com.ihr360.rest.core.Ihr360Projection;

import java.util.List;

/**
 * @author Stone.Shi
 * @description
 * @date 2018-01-12 17:39:01.
 */
@Ihr360Projection(name = "inlineGroup", types = {CompanyBenefit.class})
public interface CompanyBenefitProjectionInlineGroup {
    Long getId();

//    BenefitStrategy getStrategy();

//    String getCompanyId();

    String getName();

    @JsonProperty(value = "companyConfigs")
    List<CompanyBenefitConfigVo> getVoCompanyConfigs();

    boolean isEnabled();

    String getRemark();

    @JsonProperty(value = "group")
    BenefitGroupVo getVoGroup();

}
